home *** CD-ROM | disk | FTP | other *** search
- Path: news.larc.nasa.gov!amiga-request
- From: amiga-request@ab20.larc.nasa.gov (Amiga Sources/Binaries Moderator)
- Subject: v91i020: Mandel 1.0 - yet another mandelbrot, Part04/04
- Reply-To: dm@stekt.oulu.fi (Hannu Helminen ti)
- Newsgroups: comp.sources.amiga
- Message-ID: <comp.sources.amiga:v91i020@ab20.larc.nasa.gov>
- References: <comp.sources.amiga:v91i017@ab20.larc.nasa.gov>
- Date: 18 Feb 91 22:25:43 GMT
- Approved: tadguy@uunet.UU.NET (Tad Guy)
- X-Mail-Submissions-To: amiga@uunet.uu.net
- X-Post-Discussions-To: comp.sys.amiga.misc
-
- Submitted-by: dm@stekt.oulu.fi (Hannu Helminen ti)
- Posting-number: Volume 91, Issue 020
- Archive-name: applications/mandel-1.0/part04
-
- #!/bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 4 (of 4)."
- # Contents: source/gui.asm.ad
- # Wrapped by tadguy@ab20 on Mon Feb 18 17:25:40 1991
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'source/gui.asm.ad' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'source/gui.asm.ad'\"
- else
- echo shar: Extracting \"'source/gui.asm.ad'\" \(34202 characters\)
- sed "s/^X//" >'source/gui.asm.ad' <<'END_OF_FILE'
- X dc.w 0,11
- X dc.w 0,0
- XMPLUSGadget:
- X dc.l MMINUSGadget ; and the next one.
- X dc.w 14,40,6,11 ; place & size
- X dc.w GADGHCOMP|GADGIMAGE
- X dc.w RELVERIFY|GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l LEFTimage
- X dc.l 0,0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_M ; ID
- X dc.l 0
- XMMINUSGadget:
- X dc.l ZGadget ; and the next one.
- X dc.w 66,40,6,11 ; place & size
- X dc.w GADGHCOMP|GADGIMAGE
- X dc.w RELVERIFY|GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l RIGHTimage
- X dc.l 0,0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_M|MINUS ; ID
- X dc.l 0
- XZGadget:
- X dc.l ZPLUSGadget ; more to come...
- X dc.w 23,55,40,8 ; place & size
- X dc.w GADGHCOMP
- X dc.w RELVERIFY|GADGIMMEDIATE|STRINGRIGHT
- X dc.w STRGADGET
- X dc.l ZBorder
- X dc.l 0
- X dc.l ZText
- X dc.l 0
- X dc.l ZString ; specialinfo
- X dc.w STRING|GAD_Z ; ID
- X dc.l 0
- XZString:
- X dc.l ZBuffer
- X dc.l 0
- X dc.w 0
- X dc.w 9
- X dc.w 0
- X dc.w 0,0,0,0,0
- X dc.l 0
- X dc.l 0,0
- XZText:
- X dc.b 1,2 ; pens
- X dc.b RP_JAM1,0 ; drawmodes
- X dc.w -18,0 ; offsets
- X dc.l 0 ; default font
- X dc.l ZLetter ; (yeah, just one letter)
- X dc.l 0 ; no more text
- X* These are same as ZBorder. One could optimize. Why should one?
- XZBorder:
- X dc.w -2,-2 ; place
- X dc.b 1,0 ; pens
- X dc.b RP_JAM1
- X dc.b 5 ; # of pairs
- X dc.l ZPairs ; the actual data
- X dc.l 0
- XZPairs:
- X dc.w 0,0
- X dc.w 43,0
- X dc.w 43,11
- X dc.w 0,11
- X dc.w 0,0
- XZPLUSGadget:
- X dc.l ZMINUSGadget ; and the next one.
- X dc.w 14,53,6,11 ; place & size
- X dc.w GADGHCOMP|GADGIMAGE
- X dc.w RELVERIFY|GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l LEFTimage
- X dc.l 0,0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_Z ; ID
- X dc.l 0
- XZMINUSGadget:
- X dc.l IGadget ; still these to go
- X dc.w 66,53,6,11 ; place & size
- X dc.w GADGHCOMP|GADGIMAGE
- X dc.w RELVERIFY|GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l RIGHTimage
- X dc.l 0,0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_Z|MINUS ; ID
- X dc.l 0
- XIGadget:
- X dc.l IMINUSGadget ; more to come...
- X dc.w 27,68,32,8 ; place & size
- X dc.w GADGHCOMP
- X dc.w RELVERIFY|GADGIMMEDIATE|STRINGRIGHT
- X dc.w STRGADGET
- X dc.l IBorder
- X dc.l 0
- X dc.l IText
- X dc.l 0
- X dc.l IString ; specialinfo
- X dc.w STRING|GAD_I ; ID
- X dc.l 0
- XIString:
- X dc.l IBuffer
- X dc.l 0
- X dc.w 0
- X dc.w 6
- X dc.w 0
- X dc.w 0,0,0,0,0
- X dc.l 0
- X dc.l 0,0
- XIText:
- X dc.b 1,2 ; pens
- X dc.b RP_JAM1,0 ; drawmodes
- X dc.w -22,0 ; offsets
- X dc.l 0 ; default font
- X dc.l ILetter ; (yeah, just one letter)
- X dc.l 0 ; no more text
- X* This is actually same as ZBorder & ZPairs, but who cares?
- XIBorder:
- X dc.w -2,-2 ; place
- X dc.b 1,0 ; pens
- X dc.b RP_JAM1
- X dc.b 5 ; # of pairs
- X dc.l IPairs ; the actual data
- X dc.l 0
- XIPairs:
- X dc.w 0,0
- X dc.w 35,0
- X dc.w 35,11
- X dc.w 0,11
- X dc.w 0,0
- XIMINUSGadget:
- X dc.l IPLUSGadget ; and the next one.
- X dc.w 18,66,6,11 ; place & size
- X dc.w GADGHCOMP|GADGIMAGE
- X dc.w RELVERIFY|GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l LEFTimage
- X dc.l 0,0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_I|MINUS ; ID
- X dc.l 0
- XIPLUSGadget:
- X dc.l ZOOMGadget ; and still more.
- X dc.w 62,66,6,11 ; place & size
- X dc.w GADGHCOMP|GADGIMAGE
- X dc.w RELVERIFY|GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l RIGHTimage
- X dc.l 0,0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_I ; ID
- X dc.l 0
- XZOOMGadget:
- X dc.l DRAWGadget ; and still more.
- X dc.w 73,40,32,12 ; place & size
- X dc.w GADGHIMAGE|GADGIMAGE
- X dc.w GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l ZOOMimage0
- X dc.l ZOOMimage1
- X dc.l 0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_ZOOM|ZOOMTYPE ; ID
- X dc.l 0
- XDRAWGadget:
- X dc.l RESETGadget ; and still more.
- X dc.w 73,53,32,12 ; place & size
- X dc.w GADGHIMAGE|GADGIMAGE
- X dc.w GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l DRAWimage0
- X dc.l DRAWimage1
- X dc.l 0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_DRAW|ZOOMTYPE ; ID
- X dc.l 0
- XRESETGadget:
- X dc.l MANDELGadget ; and still more.
- X dc.w 73,66,32,12 ; place & size
- X dc.w GADGHIMAGE|GADGIMAGE
- X dc.w GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l RESETimage0
- X dc.l RESETimage1
- X dc.l 0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_RESET|ZOOMTYPE ; ID
- X dc.l 0
- XMANDELGadget:
- X dc.l JULIAGadget ; and still more.
- X dc.w 106,40,19,25 ; place & size
- X dc.w GADGHIMAGE|GADGIMAGE
- X dc.w GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l MANDELimage0 ; gadgetrender
- X dc.l MANDELimage1 ; selectrender
- X dc.l 0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_MANDEL|SETTYPE ; ID
- X dc.l 0
- XJULIAGadget:
- X dc.l QUITGadget ; and still more.
- X dc.w 126,40,19,25 ; place & size
- X dc.w GADGHIMAGE|GADGIMAGE
- X dc.w GADGIMMEDIATE
- X dc.w BOOLGADGET
- X dc.l JULIAimage0 ; gadgetrender
- X dc.l JULIAimage1 ; selectrender
- X dc.l 0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_JULIA|SETTYPE ; ID
- X dc.l 0
- XQUITGadget:
- X dc.l 0 ; This was the end (Thank Goddess) (see below)
- X dc.w 106,66,39,12 ; place & size
- X dc.w GADGHIMAGE|GADGIMAGE
- X dc.w GADGIMMEDIATE|RELVERIFY
- X dc.w BOOLGADGET
- X dc.l QUITimage0
- X dc.l QUITimage1
- X dc.l 0,0
- X dc.l 0 ; specialinfo
- X dc.w GAD_QUIT ; ID
- X dc.l 0
- X
- X* That was God awful!!! Gadget after gadget, structure after structure...
- X* Uhh... It must've been a real pain to code a program like preferences
- X* with thousands of gadgets.
- X
- XUPimage:
- X dc.w 0,0 ; offsets
- X dc.w 11,6 ; w, h
- X dc.w DEPTH ; depth
- X dc.l UParrow ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- X* The nextimage field seems to be important. Forget it and you
- X* will have to debug your program for weeks.
- XDOWNimage:
- X dc.w 0,0 ; offsets
- X dc.w 11,6 ; w, h
- X dc.w DEPTH ; depth
- X dc.l DOWNarrow ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XLEFTimage:
- X dc.w 0,0 ; offsets
- X dc.w 6,11 ; w, h
- X dc.w DEPTH ; depth
- X dc.l LEFTarrow ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XRIGHTimage:
- X dc.w 0,0 ; offsets
- X dc.w 6,11 ; w, h
- X dc.w DEPTH ; depth
- X dc.l RIGHTarrow ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XZOOMimage0:
- X dc.w 0,0 ; offsets
- X dc.w 32,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l ZOOMpict ; actual image
- X dc.b %00001 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XZOOMimage1:
- X dc.w 0,0 ; offsets
- X dc.w 32,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l ZOOMpict ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XDRAWimage0:
- X dc.w 0,0 ; offsets
- X dc.w 32,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l DRAWpict ; actual image
- X dc.b %00001 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XDRAWimage1:
- X dc.w 0,0 ; offsets
- X dc.w 32,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l DRAWpict ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XRESETimage0:
- X dc.w 0,0 ; offsets
- X dc.w 32,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l RESETpict ; actual image
- X dc.b %00001 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XRESETimage1:
- X dc.w 0,0 ; offsets
- X dc.w 32,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l RESETpict ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XJULIAimage0:
- X dc.w 0,0 ; offsets
- X dc.w 19,25 ; w, h
- X dc.w DEPTH ; depth
- X dc.l JULIApict ; actual image
- X dc.b %00001 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XJULIAimage1:
- X dc.w 0,0 ; offsets
- X dc.w 19,25 ; w, h
- X dc.w DEPTH ; depth
- X dc.l JULIApict ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XMANDELimage0:
- X dc.w 0,0 ; offsets
- X dc.w 19,25 ; w, h
- X dc.w DEPTH ; depth
- X dc.l MANDELpict ; actual image
- X dc.b %00001 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XMANDELimage1:
- X dc.w 0,0 ; offsets
- X dc.w 19,25 ; w, h
- X dc.w DEPTH ; depth
- X dc.l MANDELpict ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XQUITimage0:
- X dc.w 0,0 ; offsets
- X dc.w 39,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l QUITpict ; actual image
- X dc.b %00001 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- XQUITimage1:
- X dc.w 0,0 ; offsets
- X dc.w 39,12 ; w, h
- X dc.w DEPTH ; depth
- X dc.l QUITpict ; actual image
- X dc.b %00011 ; planepick
- X dc.b %00000 ; planeonoff
- X dc.l 0 ; nextimage
- X
- XCross:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 2 ; # of pairs
- X dc.l CrossVPairs ; the actual data
- X dc.l CrossH ; next
- XCrossVPairs:
- X dc.w -10,0
- X dc.w 10,0
- XCrossH:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 2 ; # of pairs
- X dc.l CrossHPairs ; the actual data
- X dc.l 0 ; next
- XCrossHPairs:
- X dc.w 0,-10
- X dc.w 0,10
- X
- XTopLeft:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l TopLeftPairs ; the actual data
- X dc.l 0
- XTopLeftPairs:
- X dc.w 0,10
- X dc.w 0,0
- X dc.w 10,0
- XTopRight:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l TopRightPairs ; the actual data
- X dc.l 0
- XTopRightPairs:
- X dc.w 0,10
- X dc.w 0,0
- X dc.w -10,0
- XBottomLeft:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l BottomLeftPairs ; the actual data
- X dc.l 0
- XBottomLeftPairs:
- X dc.w 0,-10
- X dc.w 0,0
- X dc.w 10,0
- XBottomRight:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l BottomRightPairs ; the actual data
- X dc.l 0
- XBottomRightPairs:
- X dc.w 0,-10
- X dc.w 0,0
- X dc.w -10,0
- XLeftLeft:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l LeftLeftPairs ; the actual data
- X dc.l LeftVLine
- XLeftLeftPairs:
- X dc.w 5,5
- X dc.w 0,0
- X dc.w 5,-5
- XLeftVLine:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 2 ; # of pairs
- X dc.l LeftVPairs ; the actual data
- X dc.l 0
- XLeftVPairs:
- X dc.w 1,0
- X dc.w 10,0
- XRightRight:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l RightRightPairs ; the actual data
- X dc.l RightVLine
- XRightRightPairs:
- X dc.w -5,5
- X dc.w 0,0
- X dc.w -5,-5
- XRightVLine:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 2 ; # of pairs
- X dc.l RightVPairs ; the actual data
- X dc.l 0
- XRightVPairs:
- X dc.w -1,0
- X dc.w -10,0
- XUpUp:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l UpUpPairs ; the actual data
- X dc.l UpHLine
- XUpUpPairs:
- X dc.w -5,5
- X dc.w 0,0
- X dc.w 5,5
- XUpHLine:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 2 ; # of pairs
- X dc.l UpHPairs ; the actual data
- X dc.l 0
- XUpHPairs:
- X dc.w 0,1
- X dc.w 0,10
- XDownDown:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 3 ; # of pairs
- X dc.l DownDownPairs ; the actual data
- X dc.l DownHLine
- XDownDownPairs:
- X dc.w -5,-5
- X dc.w 0,0
- X dc.w 5,-5
- XDownHLine:
- X dc.w 0,0 ; place
- X dc.b 31,0 ; pens
- X dc.b RP_COMPLEMENT
- X dc.b 2 ; # of pairs
- X dc.l DownHPairs ; the actual data
- X dc.l 0
- XDownHPairs:
- X dc.w 0,-1
- X dc.w 0,-10
- XCoords:
- X dc.b 1,2 ; pens
- X dc.b RP_JAM2,0 ; drawmode, (wordalign)
- X dc.w 1,1 ; offsets
- X dc.l 0 ; font (use default)
- X dc.l CoordText ; the actual text
- X dc.l 0 ; no more text
- X
- X* These options are for CLI usage.
- X* Note: There are currently three synonyms in these options, namely
- X* -j# -j -x# -x -m# -m
- X* The presence of a number determines how they are interpreted.
- X* It is entirely safe to add new options here.
- X
- Xjumptable:
- X dc.l opt_x,opt_y,opt_m,opt_i
- X dc.l opt_l,opt_h,opt_a
- X dc.l opt_c,opt_w,opt_p
- X dc.l opt_g
- X dc.l opt_j
- X dc.l opt_s
- X
- Xoptions: dc.b 'XYMILHACWPGJS',0 ; These in UPPER CASE...
- X ds.w 0
- X
- X* And now for WB usage. The synonyms do no longer exists, so
- X* entry points are now slightly different.
- X* Also, flags lhacwpgx are entered from WB with a sinle FLAGS=
- X* tooltype.
- X* I try to organize my program in such a way that you may
- X* insert new entries here if you like.
- XWBjumptable
- X dc.l opt_x,opt_y,opt_m,opt_i,opt_jx,opt_jy
- X dc.l opt_flags,opt_s
- XWBoptions
- X dc.b 'X',0
- X dc.b 'Y',0
- X dc.b 'M',0
- X dc.b 'I',0
- X dc.b 'JX',0
- X dc.b 'JY',0
- X dc.b 'FLAGS',0 ; LHA, CWP, XG, JM
- X dc.b 'SAVE',0
- X dc.b 0 ; This means end
- X ds.w 0
- X
- XERROR_none EQU 0
- XERROR_nosignal EQU 1
- XERROR_cmdline EQU 2
- XERROR_noscreen EQU 3
- XERROR_nowindow EQU 4
- XERROR_nomem EQU 5
- XERROR_noifflib EQU 6
- XERROR_ifflib EQU 7
- XERROR_iconlib EQU 8
- XERROR_noicon EQU 9
- XERROR_tooltype EQU 10
- X
- Xerrors:
- X dc.l msg_none,msg_nosignal,msg_cmdline,msg_noscreen,msg_nowindow
- X dc.l msg_nomem,msg_noifflib,msg_ifflib,msg_iconlib,msg_noicon
- X dc.l msg_tooltype
- X
- Xmsg_none: dc.b 0
- Xmsg_nosignal: dc.b ': Could not allocate signal bit',10,0
- Xmsg_cmdline: dc.b ': Error in command line options',10,0
- Xmsg_noscreen: dc.b ': Could not open screen',10,0
- Xmsg_nowindow: dc.b ': Could not open window',10,0
- Xmsg_nomem: dc.b ': Could not allocate memory',10,0
- Xmsg_noifflib: dc.b ': You need iff.library in your libs: directory'
- X dc.b ' to save pictures',10,0
- Xmsg_ifflib: dc.b ': iff.library returned error on save command',10,0
- Xmsg_iconlib dc.b ': Could not open icon.library',10,0
- Xmsg_noicon dc.b ': Could not check icon (for tool types)',10,0
- Xmsg_tooltype dc.b ': Error in tooltype options',10,0
- X
- X
- XXBuffer: dc.b '+0.000000000',0
- XYBuffer: dc.b '+0.000000000',0
- XMBuffer: dc.b '00.00000',0
- XZBuffer: dc.b '+0.00000',0
- XIBuffer: dc.b '00000',0
- XXLetter: dc.b 'x',0
- XYLetter: dc.b 'y',0
- XMLetter: dc.b 'M',0
- XZLetter: dc.b 'Z',0
- XILetter: dc.b 'i',0
- X
- XScreenTitle:
- X dc.b 'MandelBrot',0
- X
- XCoordText:
- X dc.b '+0.000000000 +0.000000000',0
- X
- X
- X_GfxLib dc.b 'graphics.library',0
- X_IntuitionLib dc.b 'intuition.library',0
- X_DosLib dc.b 'dos.library',0
- X_IconLib dc.b 'icon.library',0
- X_IffLib dc.b 'iff.library',0
- X_TimerDev dc.b 'timer.device',0
- X
- XLongUsage:
- X dc.b 10
- X dc.b 'This program draws the Mandelbrot and Julia sets'
- X dc.b ' (z -> z^2 + c)',10
- X dc.b 'using a smart contour-crawling method'
- X dc.b ' and fast 32-bit fixed point math.',10
- X dc.b 'Author: Hannu "the DM" Helminen',10
- X dc.b 10
- X dc.b 'Freely distributable version 1.00',10
- X dc.b 10
- X dc.b ' z = x + y i is the centerpoint of the set',10
- X dc.b ' c = jx + jy i is a constant only for Julia sets',10
- X dc.b ' m is magnification, 5 - 29 (log scale)',10
- X dc.b ' i is the maximum number of iterations, i <= 65535',10
- X dc.b 'Save pictures to filename by CTRL-S',10
- X dc.b 10
- X dc.b 'Flags: -l low -h high -a auto precision',10
- X dc.b ' -c crawl -w walk -p crawl if possible',10
- X dc.b ' -x exit -g use GUI',10
- X dc.b ' -j julia -m mandelbrot',10
- XShortUsage:
- X dc.b 10
- X dc.b 'Usage: mandel or mandel ?',10
- X dc.b ' or mandel '
- X dc.b '{-x',$1b,'[4mx',$1b,'[0m'
- X dc.b ' -y',$1b,'[4my',$1b,'[0m'
- X dc.b ' -m',$1b,'[4mm',$1b,'[0m'
- X dc.b ' -i',$1b,'[4mi',$1b,'[0m'
- X dc.b ' -l-h-a -c-w-p -x-g -j-m'
- X dc.b 10,' '
- X dc.b ' -jx',$1b,'[4mjx',$1b,'[0m'
- X dc.b ' -jy',$1b,'[4mjy',$1b,'[0m'
- X dc.b ' -s',$1b,'[4m<filename>',$1b,'[0m'
- X dc.b '}'
- X
- X dc.b 10
- XLongLen EQU *-LongUsage
- XShortLen EQU *-ShortUsage
- X
- Xstdout_name
- X dc.b 'con:0/50/640/100/ mandel by DM 1990 ',0
- X
- XNameBuffer dc.b 'mandel.picture'
- XNull dc.b 0
- X ds.b 256 ; enough for any filename to be stored here.
- X
- XNameEnd dc.l Null ; pointer to end of string
- X
- X
- X
- X SECTION images,DATA,CHIP
- XUParrow:
- X dc.w %0000010000000000
- X dc.w %0000101000000000
- X dc.w %0001000100000000
- X dc.w %0010000010000000
- X dc.w %0100000001000000
- X dc.w %1111111111100000
- X
- X dc.w %0000000000000000
- X dc.w %0000010000000000
- X dc.w %0000111000000000
- X dc.w %0001111100000000
- X dc.w %0011111110000000
- X dc.w %0000000000000000
- XDOWNarrow:
- X dc.w %1111111111100000
- X dc.w %0100101001000000
- X dc.w %0010000010000000
- X dc.w %0001000100000000
- X dc.w %0000101000000000
- X dc.w %0000010000000000
- X
- X dc.w %0000000000000000
- X dc.w %0011111110000000
- X dc.w %0001111100000000
- X dc.w %0000111000000000
- X dc.w %0000010000000000
- X dc.w %0000000000000000
- XLEFTarrow:
- X dc.w %0000010000000000
- X dc.w %0000110000000000
- X dc.w %0001010000000000
- X dc.w %0010010000000000
- X dc.w %0100010000000000
- X dc.w %1000010000000000
- X dc.w %0100010000000000
- X dc.w %0010010000000000
- X dc.w %0001010000000000
- X dc.w %0000110000000000
- X dc.w %0000010000000000
- X
- X dc.w %0000000000000000
- X dc.w %0000000000000000
- X dc.w %0000100000000000
- X dc.w %0001100000000000
- X dc.w %0011100000000000
- X dc.w %0111100000000000
- X dc.w %0011100000000000
- X dc.w %0001100000000000
- X dc.w %0000100000000000
- X dc.w %0000000000000000
- X dc.w %0000000000000000
- XRIGHTarrow:
- X dc.w %1000000000000000
- X dc.w %1100000000000000
- X dc.w %1010000000000000
- X dc.w %1001000000000000
- X dc.w %1000100000000000
- X dc.w %1000010000000000
- X dc.w %1000100000000000
- X dc.w %1001000000000000
- X dc.w %1010000000000000
- X dc.w %1100000000000000
- X dc.w %1000000000000000
- X
- X dc.w %0000000000000000
- X dc.w %0000000000000000
- X dc.w %0100000000000000
- X dc.w %0110000000000000
- X dc.w %0111000000000000
- X dc.w %0111100000000000
- X dc.w %0111000000000000
- X dc.w %0110000000000000
- X dc.w %0100000000000000
- X dc.w %0000000000000000
- X dc.w %0000000000000000
- X
- XZOOMpict:
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000001111111100
- X dc.w %0111001000100101,%0000001000000100
- X dc.w %0001010101010111,%0000001001100100
- X dc.w %0010010101010101,%0000011110010100
- X dc.w %0100010101010101,%0000011110010100
- X dc.w %0111001000100101,%0000001001100100
- X dc.w %0000000000000000,%0000001000000100
- X dc.w %0000000000000000,%0000001111111100
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111110000000011
- X dc.w %1000110111011010,%1111110000000011
- X dc.w %1110101010101000,%1111110000000011
- X dc.w %1101101010101010,%1111100000000011
- X dc.w %1011101010101010,%1111100000000011
- X dc.w %1000110111011010,%1111110000000011
- X dc.w %1111111111111111,%1111110000000011
- X dc.w %1111111111111111,%1111110000000011
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111111111111111
- X
- XDRAWpict:
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000011111111100
- X dc.w %0000000000000000,%0000010000000100
- X dc.w %0110011001110101,%0111111010000100
- X dc.w %0101010101010101,%0100010000000100
- X dc.w %0101011001110101,%0100010010000100
- X dc.w %0101010101010111,%0100010000000100
- X dc.w %0110010101010101,%0100010010000100
- X dc.w %0000000000000000,%0100011111111100
- X dc.w %0000000000000000,%0100000010000000
- X dc.w %0000000000000000,%0111111110000000
- X dc.w %0000000000000000,%0000000000000000
- X
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111100000000011
- X dc.w %1111111111111111,%1111100000000011
- X dc.w %1001100110001010,%1000000000000011
- X dc.w %1010101010101010,%1000000000000011
- X dc.w %1010100110001010,%1000000000000011
- X dc.w %1010101010101000,%1000000000000011
- X dc.w %1001101010101010,%1000000000000011
- X dc.w %1111111111111111,%1000000000000011
- X dc.w %1111111111111111,%1000000001111111
- X dc.w %1111111111111111,%1000000001111111
- X dc.w %1111111111111111,%1111111111111111
- XRESETpict:
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000001110011100
- X dc.w %0110011100110111,%0111001100001100
- X dc.w %0101010001000100,%0010001010010100
- X dc.w %0110011000100110,%0010000000000000
- X dc.w %0101010000010100,%0010000000000000
- X dc.w %0101011101100111,%0010001010010100
- X dc.w %0000000000000000,%0000001100001100
- X dc.w %0000000000000000,%0000001110011100
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111110001100011
- X dc.w %1001100011001000,%1000110011110011
- X dc.w %1010101110111011,%1101110101101011
- X dc.w %1001100111011001,%1101111111111111
- X dc.w %1010101111101011,%1101111111111111
- X dc.w %1010100010011000,%1101110101101011
- X dc.w %1111111111111111,%1111110011110011
- X dc.w %1111111111111111,%1111110001100011
- X dc.w %1111111111111111,%1111111111111111
- X dc.w %1111111111111111,%1111111111111111
- X
- XMANDELpict:
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0010101110110011,%0000000000000000
- X dc.w %0011101010101010,%1000000000000000
- X dc.w %0010101110101010,%1000000000000000
- X dc.w %0010101010101010,%1000000000000000
- X dc.w %0010101010101011,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000010000,%0000000000000000
- X dc.w %0000000001101100,%0000000000000000
- X dc.w %0000000010000010,%0000000000000000
- X dc.w %0000011010000010,%0000000000000000
- X dc.w %0000100100000010,%0000000000000000
- X dc.w %0011100000000100,%0000000000000000
- X dc.w %0000100100000010,%0000000000000000
- X dc.w %0000011010000010,%0000000000000000
- X dc.w %0000000010000010,%0000000000000000
- X dc.w %0000000001101100,%0000000000000000
- X dc.w %0000000000010000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1101010001001100,%1110000000000000
- X dc.w %1100010101010101,%0110000000000000
- X dc.w %1101010001010101,%0110000000000000
- X dc.w %1101010101010101,%0110000000000000
- X dc.w %1101010101010100,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111101111,%1110000000000000
- X dc.w %1111111110010011,%1110000000000000
- X dc.w %1111111101111101,%1110000000000000
- X dc.w %1111100101111101,%1110000000000000
- X dc.w %1111011011111101,%1110000000000000
- X dc.w %1100011111111011,%1110000000000000
- X dc.w %1111011011111101,%1110000000000000
- X dc.w %1111100101111101,%1110000000000000
- X dc.w %1111111101111101,%1110000000000000
- X dc.w %1111111110010011,%1110000000000000
- X dc.w %1111111111101111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X
- XJULIApict:
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0001010101000101,%1100000000000000
- X dc.w %0001010101000101,%0100000000000000
- X dc.w %0001010101000101,%1100000000000000
- X dc.w %0101010101000101,%0100000000000000
- X dc.w %0111011101110101,%0100000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000011110000000,%0000000000000000
- X dc.w %0000100001000000,%0000000000000000
- X dc.w %0001100000100000,%0000000000000000
- X dc.w %0000010000100000,%0000000000000000
- X dc.w %0000010000010000,%0000000000000000
- X dc.w %0000001000010000,%0000000000000000
- X dc.w %0000001000001000,%0000000000000000
- X dc.w %0000000100000110,%0000000000000000
- X dc.w %0000000010000100,%0000000000000000
- X dc.w %0000000001111000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000
- X
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1110101010111010,%0010000000000000
- X dc.w %1110101010111010,%1010000000000000
- X dc.w %1110101010111010,%0010000000000000
- X dc.w %1010101010111010,%1010000000000000
- X dc.w %1000100010001010,%1010000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111100001111111,%1110000000000000
- X dc.w %1111011110111111,%1110000000000000
- X dc.w %1110011111011111,%1110000000000000
- X dc.w %1111101111011111,%1110000000000000
- X dc.w %1111101111101111,%1110000000000000
- X dc.w %1111110111101111,%1110000000000000
- X dc.w %1111110111110111,%1110000000000000
- X dc.w %1111111011111001,%1110000000000000
- X dc.w %1111111101111011,%1110000000000000
- X dc.w %1111111110000111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- X dc.w %1111111111111111,%1110000000000000
- XQUITpict:
- X dc.w %0000000000000000,%0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000001111,%1111000000000000
- X dc.w %0011101010101110,%0000000000001000,%0001000000000000
- X dc.w %0010101010100100,%0000000000001010,%0101000000000000
- X dc.w %0010101010100100,%0000000000001001,%1001000000000000
- X dc.w %0010101010100100,%0000000000001001,%1001000000000000
- X dc.w %0011101110100100,%0000000000001010,%0101000000000000
- X dc.w %0000100000000000,%0000000000001000,%0001000000000000
- X dc.w %0000000000000000,%0000000000001111,%1111000000000000
- X dc.w %0000000000000000,%0000000000000000,%0000000000000000
- X dc.w %0000000000000000,%0000000000000000,%0000000000000000
- X
- X dc.w %1111111111111111,%1111111111111111,%1111111000000000
- X dc.w %1111111111111111,%1111111111111111,%1111111000000000
- X dc.w %1111111111111111,%1111111111110000,%0000111000000000
- X dc.w %1100010101010001,%1111111111110000,%0000111000000000
- X dc.w %1101010101011011,%1111111111110000,%0000111000000000
- X dc.w %1101010101011011,%1111111111110000,%0000111000000000
- X dc.w %1101010101011011,%1111111111110000,%0000111000000000
- X dc.w %1100010001011011,%1111111111110000,%0000111000000000
- X dc.w %1111011111111111,%1111111111110000,%0000111000000000
- X dc.w %1111111111111111,%1111111111110000,%0000111000000000
- X dc.w %1111111111111111,%1111111111111111,%1111111000000000
- X dc.w %1111111111111111,%1111111111111111,%1111111000000000
- X
- X SECTION pointers,BSS
- X
- X* Nimi: Ja se on:
- X
- X_GfxBase ds.l 1
- X_IntuitionBase ds.l 1
- X_DosBase ds.l 1
- X_ExecBase EQU $4
- X_TimerBase ds.l 1
- X
- XMyScreen: ds.l 1 ; screen structure
- XMyWindow1: ds.l 1 ; window
- XMyWindow2: ds.l 1 ; another window, non-zero if valid
- XUseReq: ds.l 1 ; timer iOreq, non-zero if request pending
- XMem1: ds.l 1 ; TmpRas bitmap pointer
- XMem2: ds.l 1 ; mem for AreaInfo table
- XWBmessage: ds.l 1 ; Workbench startup message (null if from CLI)
- XMyName: ds.l 1 ; self-explanatory
- X
- XOldSecs: ds.l 1 ; to test double-click
- XOldMicros: ds.l 1 ; -"-
- XMagnify: ds.l 1 ; temp storages for: magnification
- XOldMagnify: ds.l 1 ;
- XCurrentX: ds.l 1 ; x-coordinate
- XCurrentY: ds.l 1 ; y-coordinate
- XZoom: ds.l 1 ; zooming
- XCounter: ds.w 1 ; identify each save-file with a number
- XMyNameLen: ds.w 1 ; works with MyName above
- X
- X
- X* Some stuff to make RemoveGrid easier
- Xcenterx ds.w 1
- Xcentery ds.w 1
- Xlowx ds.w 1
- Xlowy ds.w 1
- Xhighx ds.w 1
- Xhighy ds.w 1
- Xpic_c ds.l 1
- Xpic_tl ds.l 1
- Xpic_tr ds.l 1
- Xpic_bl ds.l 1
- Xpic_br ds.l 1
- X
- Xprex ds.l 1
- Xprey ds.l 1
- X
- X* We seem to need MANY temporary buffers for x/y coordinates.
- END_OF_FILE
- if test 34202 -ne `wc -c <'source/gui.asm.ad'`; then
- echo shar: \"'source/gui.asm.ad'\" unpacked with wrong size!
- fi
- # end of 'source/gui.asm.ad'
- fi
- echo shar: End of archive 4 \(of 4\).
- cp /dev/null ark4isdone
- MISSING=""
- for I in 1 2 3 4 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 4 archives.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
- --
- Mail submissions (sources or binaries) to <amiga@uunet.uu.net>.
- Mail comments to the moderator at <amiga-request@uunet.uu.net>.
- Post requests for sources, and general discussion to comp.sys.amiga.misc.
-